xm: Fix error message for xm create command.
authorkfraser@localhost.localdomain <kfraser@localhost.localdomain>
Tue, 28 Aug 2007 15:11:05 +0000 (16:11 +0100)
committerkfraser@localhost.localdomain <kfraser@localhost.localdomain>
Tue, 28 Aug 2007 15:11:05 +0000 (16:11 +0100)
When I tested xm create command, I saw the following error message.
I expected an error message "Error: (12, 'Cannot allocate memory')"
because I intentionally caused a memory shortage on the test.
But the error message was different from my expectation.

# xm create /xen/HVMdomain.1
Using config file "/xen/HVMdomain.1".
Error: an integer is required

I looked at xend.log to examine the cause why the error message was
shown.  (Could you see the attached xend.log?)
xend had the error message "Error: (12, 'Cannot allocate memory')"
first.  But xend changed the error message to "Error: an integer is
required" halfway.  I'm not sure about the cause why an exception
occurred in logging processing.  But when I applied an attached patch,
I confirmed that the error message that I expected was shown.  The
patch does not call xc.domain_destroy_hook() if self.domid is None.

Signed-off-by: Masaki Kanno <kanno.masaki@jp.fujitsu.com>
tools/python/xen/xend/XendDomainInfo.py

index aad08718fc2b50ba2ff770e1203a08127b9a87a7..267f4e2f7add7ab8aebb2329ea00078c1bee87f4 100644 (file)
@@ -1773,7 +1773,8 @@ class XendDomainInfo:
 
         self._cleanupVm()
         if self.dompath is not None:
-            xc.domain_destroy_hook(self.domid)
+            if self.domid is not None:
+                xc.domain_destroy_hook(self.domid)
             self.destroyDomain()
 
         self._cleanup_phantom_devs(paths)